1. Field of the Invention
The present invention relates to telecommunication networks, and more specifically to a method and apparatus for distributing data transfer load on different paths of a layer-2 network (e.g., ATM) when transporting layer-3 (e.g., Internet Protocol) datagrams.
2. Related Art
Layer-2 networks are often used to transport layer-3 datagrams. In a typical configuration well known in the relevant arts, an edge router interfaces with user systems (e.g., personal computers) and an asynchronous transfer mode (ATM) network to provide data transfers between the two. Another edge router may be present on the other side which provides data transfers between the ATM network and addition systems (e.g., target systems representing servers) accessed by the user systems.
A virtual circuit is often provided on a physical path (of a layer-2 network) to enable data transfers between edge routers. Thus, an edge router encapsulates a layer-3 datagram (received from a user system) in multiple ATM cells (or layer-2 packets, in general) and transmits the cells to the other edge router on the virtual circuit. The other edge router may forward the received data to a target system again in the form of layer-3 datagram(s). The data transfer in the reverse direction may also be performed similarly.
A virtual circuit may be shared for transferring data related to many systems. In general, it is desirable to provide high bandwidths on virtual circuits such that the applications on end systems (and servers) are not impeded by bottlenecks (throughput and/or latency) in data transfers. At least to avoid such bottlenecks, it is often desirable to increase the data transfer capability between edge routers (or other end systems at which virtual circuits terminate).
In a known prior approach, a service provider may increase the bandwidth of the virtual circuit, for example, by employing faster underlying physical paths. Alternatively, the service provider may use a different path with higher bandwidth. Unfortunately such approaches increase the overall cost for implementing networks. In addition, the approaches typically lead to service disruption when increasing the bandwidth as the changes entail (re)configuration of edge routers and/or intermediate switches. Accordingly, such approaches may be undesirable at least in some environments.
In an alternative prior approach, multiple logical IP interfaces may be configured on each router, with each logical IP interface being assigned a single IP address. A virtual circuit may be provisioned between each pair of IP addresses, with one address on each edge router. As a result, two different IP (layer-3) routes would be deemed to be present between the two edge routers. The traffic load (IP datagrams) may be distributed among the different layer-3 routers. In other words, the load balancing is achieved at layer-3 level.
Due to such distribution, a high aggregate bandwidth may be available for data transfers between the edge routers. At the same time, additional costs to implement high bandwidth physical paths may be avoided. However, one problem with such an alternative approach is that the complexity of implementation may be enhanced due to the need to support multiple routes (routing table entries) resulting from the parallel IP routes between the edge routers.
Accordingly, what is needed is a method and apparatus which enables data transfer load to be distributed on several virtual circuits provisioned potentially on different virtual circuit paths.